package com.lagou.mapper;

import com.lagou.domain.User;

import java.util.List;

/**
 * @Author wsl
 * @Date 2021/11/2 22:16
 * @Project_Name mybatis_quickstart
 */
public interface UserMapper {

    /**
     * 1.一对多关联查询：查询所有用户，与此同时还要查询出每一个用户所属的订单信息
     * @return
     */
    public List<User> findAllWithOrder();

     /**
     * 2.多对多关联查询：查询所有用户，与此同时还要查询出每一个用户所属的角色信息
     * @return
     */
    public List<User> findAllWithRole();

    /**
     * 3.用于一对一嵌套查询：根据id查询用户信息
     * @param id
     * @return
     */
    public User findById(Integer id);

     /**
     * 4.一对多嵌套查询：查询所有用户，与此同时还要查询出每一个用户所属的订单信息
     * @return
     */
    public List<User> findAllWithOrder2();

     /**
     * 5.多对多嵌套查询：查询所有用户，与此同时还要查询出每一个用户所属的角色信息
     * @return
     */
    public List<User> findAllWithRole2();
}
